
#include <stdio.h>

// 得到字符串的长度
int mystrlen(const char *s)
{
    int len = 0;
    while(s[len])
    {
        len++;
    }
    return len;
}

//得到10的n次方
int mypow10(int n)
{
    if (n == 0)
        return 1;
    if (n == 1)
        return 10;
    int base = 10;
    int i;
    for (i = 1; i < n; i++)
    {
        base *= 10;
    }
    return base;
}

//把一个字符转化为一个从0到9的整数
int mychartoint(char c)
{
    return c - '0';
}



int my_atoi(const char *nptr)//参数是一个char 的数组
{
    //int max = sizeof(nptr) / 2 - 1;
    int len  = mystrlen(nptr);
    //printf("%d\n", len);
    int i;
    int value = 0;

    if (nptr[0] != '-')
    {
        for (i = 0; i < len; i++)
        {
            //printf("%c\n", nptr[i]); 
            value += mychartoint(nptr[i]) * mypow10(len - i - 1);

        }
        return value;
    }

    if (nptr[0] == '-')
    {
        for (i = 1; i < len; i++)
        {
            value += mychartoint(nptr[i]) * mypow10(len - i - 1);

        }
        return -value;
    }
    return 0;
}

int main()
{
    char a[] = "-132";
    int i = my_atoi(a);
    printf("%d\n", i);
    //char x = '-';
    //printf("%d\n", x);
    return 0;
}

